package com.hbnu.system.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hbnu.system.model.dto.CheckBackDTO;
import com.hbnu.system.model.dto.SearchPageDTO;
import com.hbnu.system.model.dto.UserDTO;
import com.hbnu.system.model.entity.Meeting_host;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author ${author}
 * @since 2023-05-16
 */
public interface IMeeting_hostService extends IService<Meeting_host> {
    /**
     * 新增主办会议
     *
     * @param meetinghost
     * @return 是否成功
     */
    boolean addmeethost(Meeting_host meetinghost);

    /**
     * 删除主办会议
     *
     */
    boolean deletemeethost(String PID);

    /**
     * 修改主办会议
     *
     * @param meetinghost
     * @return 是否成功
     */
    boolean updatemeethost(Meeting_host meetinghost);

    /**
     * 主办会议VO分页查看
     */

    /**
     * 根据主办会议主键查询主板会议
     *
     * @param mhID
     * @return Paper
     */
    Meeting_host getmeethostbyid(String mhID);

    /**
     * 主办会议名称查重
     *
     * @param name
     * @return 是否重复
     */
    boolean checkmeethostName(String name);


    /**
     * 分页查询
     */
    IPage<Meeting_host> pageCondition(SearchPageDTO searchPageDTO);

//
//    /**
//     * 院级审核通过
//     */
//    Boolean collegeCheckPass(String PID);
//
//    /**
//     * 院级审核打回
//     */
//    Boolean collegeCheckBack(CheckBackDTO checkBackDTO);

    /**
     * 校级审核通过
     */
    Boolean schoolCheckPass(String token,String PID);

    /**
     * 校级审核打回
     */
    Boolean schoolCheckBack(String token,CheckBackDTO checkBackDTO);

    /**
     * 主办会议提交
     */
    Boolean ReCommitMeetinghost(String id);

    /**
     * 普通用户分页查看与自己相关的主办会议
     */
    IPage<Meeting_host> userGetRelateHostmeeting(UserDTO userDTO);
//
//    /**
//     * 院级管理员查看需要自己审核的论文
//     */
//    IPage<Meeting_host> collegeUserGetPaper(UserDTO userDTO);

    /**
     * 校级管理员查看需要自己审核的主办会议
     */
    IPage<Meeting_host> schoolUserGetHostmeeting(UserDTO userDTO);
}
